/**
 * 版权所有，侵权必究！
 */

package io.renren.modules.sys.service;

import io.renren.common.entity.pay.SysDeptEntity;
import io.renren.common.page.PageData;
import io.renren.common.service.CrudService;
import io.renren.common.utils.Result;
import io.renren.modules.sys.dto.SysDeptDTO;

import java.util.List;
import java.util.Map;

/**
 * 部门管理
 *
 * @author Mark
 */
public interface SysDeptService extends CrudService<SysDeptEntity, SysDeptDTO> {

	List<SysDeptDTO> list(Map<String, Object> params);

	//
//	SysDeptDTO get(Long id);
//
//	void save(SysDeptDTO dto);
//
//	void update(SysDeptDTO dto);
//
	void delete(Long id);
//

	/**
	 * 根据部门ID，获取本部门及子部门ID列表
	 * @param id   部门ID
	 */
	List<Long> getSubDeptIdList(Long id);

	PageData<SysDeptDTO> page(Map<String, Object> params);

	Result saveDept(SysDeptDTO dto);

	PageData<SysDeptDTO> pageList(Map<String, Object> params);

	Result updateDept(SysDeptDTO dto);

}